/*	
 Taxman class
 author: Martin Dorazil 2012

 */

#pragma once

#include "Villager.h"
#include "time.h"
#include <list>
#include <iostream>
#include "../../../Terrain.h"
#include <cmath>
#include "../../../scene/Timer.h"
#include "../../static/building/Building.h"
#include "../../../gameLogic/Resource.h"
#include "../../../special/StrIntConvert.h"

#define PI 3.14159265

const unsigned int TAX_INTERVAL = 100;

class Taxman: public Villager
{
public:
	Taxman(glm::vec3 _Pos, float _r, float _speed, std::string _Name,
			std::string _modelFName, ModelPool *_mPool, PathFinder *_pathfinder,
			Terrain::Terrain *_ter);

	~Taxman(void);

	virtual void setWork(Building *building);
	virtual void doWork();
	virtual void goWork();
	virtual void backHome();
	virtual void BuildUnitBar(std::string iconFName);

protected:
	int money;
	Timer taxingTimer;

	// pointer to target building
	Building *targetBuilding;

	Gadgets::Label *taxLabel;
};

